<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
</html>
<script>
    //基础语法
    //ES6提供了新的数据结构Set.它类似于数组，但是成员的值都是唯一的，没有重复的值。
    //set本身是一个构造函数，用来生成Set数据结构
    var s = new Set();
    var arr = [1,2,3,4,5,6,7,8,9,10,10]
    arr.forEach(item => s.add(item));
    console.log(arr)
    console.log(s)

    //通过add()方法向Set结构加入成员，结果表明Set结构不会添加重复的值
    //Set函数可以接受一个数组作为参数
    var s1 = new Set([1,2,3,4,5,6,7,8,9,10,10])
    console.log(s1)

    //数组去除重复元素
    var arr1 = [1,2,3,4,5,6,7,8,9,10,10]
    var arr2 = new Set(arr1)
    console.log([...arr2])

    //字符串去除重复字符
    console.log([...new Set("YANGYANG")].join(''))

    //向Set加入值的时候，不会发生类型转换，所以5和“5”是两个不同的值
    var s2 = new Set()
    s2.add(5)
    s2.add("5")
    console.log(s2)

    //size属性 返回Set实例的成员总数
    var s3 = new Set([1,2,3,4,5,6,7,8,9,10,10])
    console.log(s3.size)

</script>